﻿
namespace CSharpLibs.Annotations
{
	/// <summary>
	/// Does the field represent multiple storage locations of the given type (e.g. for arrays, strings, lists, sets ...)
	/// </summary>
	[System.AttributeUsage(System.AttributeTargets.Field)]
	public class DummyPrimitiveFieldAttribute : System.Attribute
	{ }

	/// <summary>
	/// Does the field represent multiple storage locations of the given type (e.g. for arrays, strings, lists, sets ...)
	/// </summary>
	[System.AttributeUsage(System.AttributeTargets.Field)]
	public class MultiLocationFieldAttribute : System.Attribute
	{ }

	/// <summary>
	/// Does the field represent the size field of a container.
	/// </summary>
	[System.AttributeUsage(System.AttributeTargets.Field)]
	public class CardinalityFieldAttribute : System.Attribute
	{ }

	/// <summary>
	/// Mark the field that contains the collection that we are iterating over with an enumerator.
	/// </summary>
	[System.AttributeUsage(System.AttributeTargets.Field)]
	public class EnumeratorCollectionFieldAttribute : System.Attribute
	{ }
}
